package com.flower.service;

import java.time.LocalDate;
import java.util.List;
import java.util.Map;

/**
 * 商铺数据统计服务接口
 */
public interface ShopStatsService {

    /**
     * 获取销售趋势数据
     * @param shopId 店铺ID
     * @param startDate 开始日期
     * @param endDate 结束日期
     * @param timeUnit 时间单位：day, week, month
     * @return 销售趋势数据
     */
    Map<String, Object> getSalesTrend(Integer shopId, LocalDate startDate, LocalDate endDate, String timeUnit);

    /**
     * 获取订单状态分布
     * @param shopId 店铺ID
     * @return 订单状态分布数据
     */
    List<Map<String, Object>> getOrderStatusDistribution(Integer shopId);

    /**
     * 获取热销商品排行
     * @param shopId 店铺ID
     * @param limit 返回数量限制
     * @return 热销商品排行数据
     */
    List<Map<String, Object>> getTopProducts(Integer shopId, Integer limit);

    /**
     * 获取商品分类销售分布
     * @param shopId 店铺ID
     * @return 商品分类销售分布数据
     */
    List<Map<String, Object>> getCategoryDistribution(Integer shopId);
} 